package com.dwjm.controller;

import java.util.ArrayList;
import java.util.List;

import javax.annotation.Resource;

import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.servlet.ModelAndView;

import com.dwjm.entity.Organize;
import com.dwjm.service.OrganizeService;

/**
 * 机构表Controller层
 * 
 * @date 2016年12月23日
 * @auther luans
 */
@Controller
@RequestMapping("organize")
public class OrganizeController {

	@Resource
	private OrganizeService organzieServiceImpl;

	/**
	 * 去机构列表页面：分页查询
	 * 
	 * @param Organize
	 * @return ModelAndView
	 * @date 2016年12月23日
	 * @auther luans
	 */
	@RequestMapping("olist")
	public ModelAndView OrganizeList(Organize record) {
		ModelAndView mv = new ModelAndView();
		if (record.getPageInfo().getPageSize() < 10) {// 每页显示条数
			record.getPageInfo().setPageSize(10);
		}
		List<Organize> list = organzieServiceImpl.queryListByPage(record);

		mv.addObject("list", list);
		mv.addObject("organize", record);
		mv.setViewName("/manager/bbs/bbsOrganize");

		return mv;
	}

	/**
	 * 去机构查看
	 * 
	 * @param ModelAndView
	 * @return ModelAndView
	 * @date 2016年12月24日
	 * @auther luans
	 */
	@RequestMapping("goomanage")
	public ModelAndView goOrganizeManage(Organize organzie) {
		ModelAndView mv = new ModelAndView();
		Organize o = organzieServiceImpl.selectByPrimaryKey(organzie.getOrgId());
		List<String> list=new ArrayList<String>();
		if(!"".equals(o.getOrgContent())){
			String[] array=o.getOrgContent().split("@##");
			for(int i=0;i<array.length;i++){
				list.add(array[i]);
			}
		}
		o.setListContent(list);
		o.setPageInfo(organzie.getPageInfo());
		mv.addObject("organize", o);
		mv.setViewName("/manager/bbs/bbsOrganizeSel");

		return mv;
	}

	/**
	 * 添加、编辑、删除机构
	 * 
	 * @param ModelAndView
	 * @return ModelAndView
	 * @date 2016年12月24日
	 * @auther luans
	 */
	@RequestMapping("omanage")
	public ModelAndView OrganizeManage(Organize record) {

		if (record.getMarkManage() == 1) {// 添加
			organzieServiceImpl.insertSelective(record);
		} else if (record.getMarkManage() == 2) {// 编辑
			organzieServiceImpl.updateByPrimaryKey(record);
		} else if (record.getMarkManage() == 3) {// 删除
			record.setOrgStatus(2);
			organzieServiceImpl.updateByPrimaryKey(record);
		}

		return OrganizeList(record);
	}

	/**
	 * PC端：去机构设置页面
	 * 
	 * @param Organize
	 * @return ModelAndView
	 * @date 2016年12月23日
	 * @auther luans
	 */
	@RequestMapping("pcolist")
	public ModelAndView pcOrganizeList(Organize record) {
		ModelAndView mv = new ModelAndView();
		List<Organize> list = organzieServiceImpl.selectList();
		List<String> l=new ArrayList<String>();
		for(int i=0;i<list.size();i++){
			if(!"".equals(list.get(i).getOrgContent())){
				String[] array=list.get(i).getOrgContent().split("@##");
				for(int j=0;j<array.length;j++){
					l.add(array[j]);
				}
			}
			list.get(i).setListContent(l);
			l=new ArrayList<String>();
		}

		mv.addObject("list", list);
		mv.setViewName("/pc/bbs/bbsOrganize");

		return mv;
	}

}
